Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build quick fix for LLVM 16 #162

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

pipehuffer
Copy link

This patch removes -Werror flag so builds don't error out on a unsafe __builtin_frame_address() usage warning (which doesn't seem to matter to Orbis) and some unused variables.
It also adds the -fno-stack-protector flag, since without it, it requires a implementation for __stack_chk_fail due to Mira being built for a freestanding environment (it could be implemented later if stack protection is desired).

Tested under LLVM 16.0.3, on a Base PS4 with firmware 9.00, and on top of the chendo-offset-fix branch.

@pipehuffer
Copy link
Author

Forgot to add a change to the linker used when building the loader:
Trying to execute a loader linked with ld from binutils 2.40 crashes my console, where one linked ld.lld works fine. Don't know what causes it, but a quick binary diff over the two shows significant differences.
Both ld and ld.lld builds of the kernel work fine on my end, and its default linker could be changed to ld.lld as well if you'd like.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant